Artifact: Data Model

Data Model |
The data
model is a subset of the implementation model which describes the logical
and physical representation of persistent data in the system. It also
includes any behavior defined in the database, such as stored procedures,
triggers, constraints, etc. |
UML
representation: |
A top-level
Package stereotyped as ½data model╗, containing a set of Components which
represent the physical storage of persistent data in the system. |
Worker: |
Database
Designer |
More
information: |
Guidelines:
Data Model |
Optionality: |
Optional
if the system has no persistent data |
|
Input to Activities:
|
Output from Activities:
|
The data model is used to describe the logical and possibly physical
structure of the persistent information managed by the system. The data model is
specifically needed where the persistent data structure cannot be automatically
and mechanically derived from the structure of persistent classes in the design
model. It is used to define the mapping between persistent design classes and
persistent data structures, and to define the persistent data structures
themselves. It is most frequently needed when the design model is an object
model and the persistent storage mechanism is based upon a relational database,
although it is generally needed whenever the persistent storage mechanism is
based upon some non-object-oriented technology.
Property Name |
Brief Description |
UML Representation |
Introduction |
A
textual description that serves as a brief introduction to the model. |
Tagged
value, of type "short text". |
Packages |
The
packages used for organizational grouping purposes. |
Owned
via the association "represents", or recursively via the
aggregation "owns". |
Tables |
The
tables in the data model, owned by the packages. |
Components,
stereotyped as ½table╗. |
Relationships |
The
relationships between tables in the model. |
Associations,
stereotyped as ½foreign key╗. |
Columns |
The
data values of the tables. |
Attributes,
stereotyped as ½column╗. |
Diagrams |
The
diagrams in the model, owned by the packages. |
-
" - |
Indexes |
Data
access structures used to speed access along specified paths. |
Components,
stereotyped as ½index╗. |
Triggers |
Event-activated
behavior associated with tables. |
Operation,
stereotyped as ½trigger╗. |
Procedures |
Explicitly
invoked behavior, associated with tables or with the model as a whole. |
Component,
stereotyped as ½procedure╗. |
The Data Model is created in the Elaboration Phase, based upon
architecturally significant persistent classes. The Data Model is refined and
expanded during the Construction Phase.
An database designer is responsible for the integrity of the
data model, ensuring that the data model as a whole is correct, consistent, and
understandable.
Needs to be adapted to the semantics of the database, which may vary slightly
between RDBMS's. Object Database systems have quite different semantics and the
model described above needs to be modified accordingly.
Copyright
⌐ 1987 - 2000 Rational Software Corporation
| |

|